package com.ikun.aimian.model.vo;

import com.ikun.aimian.model.entity.UserFavorite;
import lombok.Data;
import org.springframework.beans.BeanUtils;

import java.io.Serializable;
import java.util.Date;

/**
 * 用户收藏视图对象
 */
@Data
public class UserFavoriteVO implements Serializable {
    private Long id;
    private Long appId;
    private String appName;   // 从应用表获取
    private Long userId;
    private String userName;  // 从用户表获取
    private Date createTime;  // 收藏时间

    /**
     * 基础转换方法，将 UserFavorite 实体转为 VO（只复制基础字段）
     */
    public static UserFavoriteVO fromEntity(UserFavorite favorite) {
        if (favorite == null) {
            return null;
        }
        UserFavoriteVO vo = new UserFavoriteVO();
        BeanUtils.copyProperties(favorite, vo);
        return vo;
    }
}
